class Check:
    def __init__(self, fn):
        # fn 就是要修饰函数的名称，当 Check 装饰器类被调用时，系统会自动把comment函数名称传递给fn变量
        self.__fn = fn

    # __call__方法：把一个类转换为函数的形式进行调用
    def __call__(self, *args, **kwargs):
        print("请先登陆")
        # 调用 comment 函数本身
        self.__fn(*args, **kwargs)


@Check
def comment():
    print("评论功能")


comment()
